/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.fitness.beans;

import br.com.fitness.Dao.AlunoDao;
import br.com.fitness.IDao.AlunoDaoI;
import br.com.fitness.model.Aluno;
import br.com.fitness.model.AtividadeAluno;
import br.com.fitness.model.Contato;
import java.awt.event.ActionEvent;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import java.util.logging.Logger;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

/**
 *
 * @author kamilla
 */
@ManagedBean
@SessionScoped
public class AlunoBean {

    private String pesquisar;
    private Aluno aluno = new Aluno();
    private Contato contatoAluno;
    private AtividadeAluno atividade;
    private AlunoDaoI dao = new AlunoDao();
    private List<Aluno> alunos = new ArrayList<Aluno>();
    private List<Contato> contatos = new ArrayList<Contato>();
    private List<AtividadeAluno> atividadesAluno = new ArrayList<AtividadeAluno>();
    private String menssage;

    public AlunoBean() {
    }
    private boolean skip;
    private static Logger logger = Logger.getLogger(AlunoBean.class.getName());

    public String getPesquisar() {
        return pesquisar;
    }

    public List<AtividadeAluno> getAtividadesAluno() {
        return atividadesAluno;
    }

    public void setAtividadesAluno(List<AtividadeAluno> atividadesAluno) {
        this.atividadesAluno = atividadesAluno;
    }

    public List<Contato> getContatos() {
        return contatos;
    }

    public void setContatos(List<Contato> contatos) {
        this.contatos = contatos;
    }

    public static Logger getLogger() {
        return logger;
    }

    public static void setLogger(Logger logger) {
        AlunoBean.logger = logger;
    }

    public boolean isSkip() {
        return skip;
    }

    public void setSkip(boolean skip) {
        this.skip = skip;
    }

    public String getMensagem() {
        return menssage;
    }

    public void setMensagem(String menssage) {
        this.menssage = menssage;
    }
    
    

    public void setPesquisar(String pesquisar) {
        this.pesquisar = pesquisar;
    }

    public Aluno getAluno() {
        return aluno;
    }

    public void setAluno(Aluno aluno) {
        this.aluno = aluno;
    }

    public AtividadeAluno getAtividade() {
        return atividade;
    }

    public void setAtividade(AtividadeAluno atividade) {
        this.atividade = atividade;
    }

    public Contato getContatoAluno() {
        return contatoAluno;
    }

    public void setContatoAluno(Contato contatoAluno) {
        this.contatoAluno = contatoAluno;
    }

    public AlunoDaoI getDao() {
        return dao;
    }

    public void setDao(AlunoDaoI dao) {
        this.dao = dao;
    }

    public List<Aluno> getAlunos() {
        return alunos;
    }

    public void setAlunos(List<Aluno> alunos) {
        this.alunos = alunos;
    }

    public void save(ActionEvent actionEvent) {
        System.out.println("AQuiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii");
        this.dao.salvar(this.aluno);
        
    }

    public void addNumero(ActionEvent actionEvent) {
        this.aluno.addContatoAluno(this.contatoAluno);
    }

    public void addAtividade(ActionEvent actionEvent) {
        this.aluno.addAtividades(atividade);
    }

    public void exibirAlunos(ActionEvent actionEvent) {
        dao = new AlunoDao();
        if (!this.pesquisar.trim().isEmpty() && !pesquisar.equals("Pesquisar")) {
            String consulta = "Pessoa.buscarPessoaPorNome";
            this.alunos = this.dao.listarPorNome(this.pesquisar, consulta);
        } else {
            String consulta = "Pessoa.listarPessoas";
            this.alunos = this.dao.getTodos(consulta);
        }
    }

    public void exibirAtividadesA() {
    }

    public void exibirContatoA() {
    }

    public void excluir() {
        System.out.println("Chamei saporra");
        dao = new AlunoDao();
        dao.excluir(aluno);
        String consulta = "Pessoa.listarPessoas";
        this.alunos = this.dao.getTodos(consulta);
    }

    public void addInfo(ActionEvent actionEvent) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Sample info message", "PrimeFaces rocks!"));
    }

    public void addWarn(ActionEvent actionEvent) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "Sample warn message", "Watch out for PrimeFaces!"));
    }

    public void addError(ActionEvent actionEvent) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Sample error message", "PrimeFaces makes no mistakes"));
    }

    public void addFatal(ActionEvent actionEvent) {
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, "Sample fatal message", "Fatal Error in System"));
    }
}
